Wireless device grouping via common attribute

ABSTRACT

The connection of devices for wireless service is typically a tedious process that involves the user in the minutia of an underlying protocol used by a wireless adapter. The present invention enables users of wireless devices to configure a service by automatic connection through the use of a local environmental indication of an identification code such as a barcode. A service is a labor carried out among a group of two or more devices for the benefit of one or more devices in the group. Exemplary services are: one-way file transfer, two-way file transfer, broadcast service, registration of peripherals such as printers or scanners, news aggregation, event notification, email service, calendar update, etc. An indication of an identification code is input to at least one device representing a service over a wireless link among at least a first and second device. At least one service relationship such as sender, receiver, transceiver, or relay is identified for each of a first and second device, and the devices are automatically configured into their respective service relationships utilizing the identification code.

CROSS-REFERENCE TO RELATED APPLICATIONS

Not Applicable.

STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT

Not Applicable.

BACKGROUND

In our increasingly mobile society, communication devices increasinglymake use of wireless channel technology for communication over manykinds of links. Wireless technology provides diverse benefits such asavoiding the cost, safety problems, and inconveniences of cables; andallowing the user of a communications device some degree mobility. Forexample, in cellular telephony, users are able to talk on the telephonein diverse areas that would have been inconvenient, or even impossiblewithout using wireless link technology. With the advantage of wirelesstelephony, users are able to communicate not only while tethered to awireline phone, but also while driving in cars, waiting in line at thesupermarket, waiting for a bus, hiking, boating, etc. These advantagesthat have been experienced in cellular telephony are sought in manyother service applications as well. For example, wireless links betweencomputers allow users to transfer content from a first computing deviceto a second computing device. Wireless links allow cable-free bar-codewand scanning. Wireless links allow cable-free network access. Wirelesslinks allow the cables to be eliminated between computers and printers.Wireless links may be employed to allow hands-free operation of either awireline or a cellular telephone.

In general the problems of managing a wireless link are different thanwireline communication. Wireline devices typically are powered by powercables. The disconnection of power for wireline devices may be a veryrare event. In contrast, wireless devices often rely on battery powerfor some portion of their use. A wireless device may not be able tocommunicate while being charged. To save battery life, a mobile devicemay shut itself off, or it may be intentionally shut off by the user.During these shut-down periods, the other devices that are available forservice may change since the device itself my be moved to a newlocation, or the other devices may have moved out of range, or poweredoff.

In an attempt to solve these different problems some vendors haveimplemented proprietary wireless protocols. Such proprietary solutionsmay become dominant and generally available, but usually there areseveral other vendors who issue their own proprietary protocols and sodevices do not interoperate. In order to achieve ubiquity ofinteroperable wireless devices, several standards committees have beenformed to establish specifications. Among these standards committees areIEEE 802.11, also called the WiFi standard, IEEE 802.16 also calledWireless Metropolitan Area Networks, and IEEE 802.20 also called MobileBroadband Wireless access. Another standards committee, IEEE 802.15,also called Wireless Personal Area Networking, includes the Bluetoothstandard. Many of these standards have achieved a great deal ofubiquity, so that it is common to have four or more compatible devicesin the same area dedicated to diverse services. In a meeting of 8 peoplein a conference room, for example, there could easily be 8 personalcomputers and a printer using WiFi to communicate with a WiFi hotspot togain access to a corporate network. In the same conference room therecould also be 8 Bluetooth capable cell-phones that communicate over 3different incompatible cellular carriers, and there could be twoBluetooth wireless microphones for the speakers. This single meetingcontains 10 WiFi devices and 11 Bluetooth devices.

Those devices which make use of a wireless protocol for a serviceapplication gain an advantage when the same protocol is used for otherdiverse service applications. The greater the number of serviceapplications, the greater the volume of production, and therefore thedevices needed for the protocol become more readily available and lessexpensive. As ubiquity increases, however, the need to deal with otherservices in the same area becomes more important. There is a generalneed for wireless devices to perform methods of service connection in anefficient and user-friendly manner. There is also a general need forwireless devices to be constructed in such a manner as to supportefficiency and ease of use.

SUMMARY

The present invention is defined by the claims below, not this summary.Embodiments of the present invention provide a computer-readable mediafor performing a method of service connection. An indication of anidentification code is input into a local device that represents aservice over a wireless link between itself and one or more remotedevices. A service relationship is identified for the local device andassociated with the identification code. At least one remote device isidentified as having a service relationship to the local device based onthe identification code. The local device is automatically configuredinto the identified service relationship, and the remote device isautomatically configured into its service relationship using theidentified code.

In a first aspect, an exemplary embodiment of the present inventionrelates to a local device for automatic wireless system configurationsupporting content transfer. The local device includes a first inputcomponent which is configured to receive an indication of anidentification code. The identification code is used to represent aservice that is common between the local device and at least one remotedevice participating in content transfer. A processor is coupled to thefirst input component and also to a wireless adapter. The processor runsan application that identifies a service relationship of the localdevice associated with the identification code. The applicationautomatically connects to at least a first remote device bycommunicating the identification code over the wireless adapter.

In another aspect, an exemplary embodiment of the present inventionrelates to a user interface for registration of at least a first remotewireless device. A prompt in the user interface indicates that anidentification code must be input. The identification code represents aservice that is common among a local device and at least a first remotedevice participating in content transfer. An input component of the userinterface receives an indication of the identification code. A controlin the user interface identifies a service relationship associated withthe identification code for the local device. A status display in theuser interface indicates successful automatic connection among a localdevice and at least a first remote device. The display indicates successafter the local device establishes the service relationship with atleast a first remote wireless device associated with the identificationcode.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

Illustrative embodiments of the present invention are described indetail below with reference to the attached drawing figures, which areincorporated by reference herein and wherein:

FIG. 1 depicts an exemplary system environment suitable for use inimplementing embodiments of the present invention;

FIG. 2 depicts embodiments of devices suitable for performing thepresent invention;

FIG. 3 depicts a flow diagram of receiver operations in a contenttransfer service to perform a method of service connection;

FIG. 4 depicts a flow diagram of sender operations in a content transferservice to perform a method of service connection; and

FIG. 5 depicts an exemplary user interface for registration of a firstremote wireless device.

DETAILED DESCRIPTION

As one skilled in the art will appreciate, embodiments of the presentinvention may be embodied as, among other things: a device, userinterface, or computer-readable medium. Accordingly, the embodiments maytake the form of a hardware embodiment, a software embodiment, or anembodiment combining software and hardware. In one embodiment, thepresent invention takes the form of one or more computer-readable mediathat include computer-useable instructions embodied thereon.

Computer-readable media include both volatile and nonvolatile media,removable and nonremovable media, and also include media readable by adatabase, a computer, and various other computing devices. By way ofexample, and not limitation, computer-readable media comprisecomputer-storage media and communications media.

Computer-storage media, or machine-readable media, include mediaimplemented in any method or technology for storing information.Examples of stored information include computer-useable instructions,data structures, program modules, and other data representations.Computer-storage media include, but are not limited to RAM, ROM, EEPROM,flash memory or other memory technology, CD-ROM, digital versatile discs(DVD), holographic media or other optical disc storage, magneticcassettes, magnetic tape, magnetic disk storage, and other magneticstorage devices. These memory components can store data momentarily,temporarily, or permanently.

Communications media typically store computer-useableinstructions—including data structures and program modules—in amodulated data signal. The term “modulated data signal” refers to apropagated signal that has one or more of its characteristics set orchanged to encode information in the signal. An exemplary modulated datasignal includes a carrier wave or other transport mechanism.Communications media include any information-delivery media. By way ofexample but not limitation, communications media include wired media,such as a wired network or direct-wired connection, and wireless mediasuch as acoustic, infrared, radio, microwave, spread-spectrum, and otherwireless media technologies. Combinations of the above are includedwithin the scope of computer-readable media.

The subject matter of the present invention is described withspecificity herein to meet statutory requirements. However, thedescription itself is not intended to limit the scope of this patent.Rather, the inventors have contemplated that the claimed subject mattermight also be embodied in other ways, to include steps or combinationsof steps similar to the ones described in this document, in conjunctionwith other present or future technologies. Moreover, although the terms“step” and/or “block” may be used herein to connote different elementsof methods employed, the terms should not be interpreted as implying anyparticular order among or between various steps herein disclosed.

Considering FIG. 1 an exemplary environment for an ubiquitous wirelessservice is depicted generally as environment 100. A number of devicesare depicted in 10, 20, 30, 40, 50 and 60. Wireless adapters, such as14, 25, 32, 44, 53 and 63, on each respective device allow those otherdevices within range to communicate by an ubiquitous wireless protocol.Device 10 illustrates a handheld computer such as the Intermec® 741Bcolor mobile computer, having a full alphanumeric keypad 11 for input,as well as an image sensor 12 for barcode scanning, and a color display13. Device 20 illustrates a handheld computer such as the Intermec® 730mobile computer, having a numeric keypad 21 for input, an image sensor22 for barcode scanning, and a stylus 23 for input to a touch sensitivescreen 24. The screen 24 also serves as a display component. Device 30illustrates a wand scanner such as the Intermec® Scanplus 1802 Vistahandheld scanner. Device 30 has, for example, an imaging sensor 31 fordetecting barcodes, and a wireless adapter 32 for communication withanother device such as computer 40 via a wireless base station 44.Device 40 is a desktop computer having an input components such as akeyboard 41 and a flatbed barcode scanner 42. Device 40 is alsooutfitted with a monitor 43 for displaying a user interface to anoperator. Device 40 is also connected to a network 45 which may forexample be a point of sale network, corporate network, or the Internet.Device 50 depicts a cell phone with a keypad input component 51 and animaging sensor input component 58 used, for example as a camera. Device50 also has a display component 52, ubiquitous wireless adapter 53, andan antenna 54 for communication with a base station 55 in network A,having an interface to network 57. Device 60 is similarly a cell phonehaving keypad input component 61, imaging sensor input component 68,display component 62, ubiquitous wireless adapter 63, and antenna 64 forcommunication with a base station 65 in network B. In this examplenetworks A and B are different and incompatible, so that an imagecollected by device 50 through input component 58, cannot be sent viathe cellular antenna 54 for relay to cellular antenna 64 of device 60.

An exemplary wireless service may be shared among a subset of devices10, 20, 30, 40, 50 and 60, when each member of the subset has some formof wireless communication capability established by virtue of theirrespective communication adapters 14, 25, 32, 44, 53, and 63. A serviceis a labor carried out among a group of two or more devices such as 10,20, 30, 40, 50, and 60, for the benefit of one or more devices in thegroup. One exemplary service is temporary one-way file transfer. Forexample, device 50 may have a favorite picture that was collected usingimage sensor 58 that a user would like to transfer to device 60. In thisexample there are two service relationships. Device 50 has a senderrelationship to the service, and device 60 has a receiver relationshipto the service. Another exemplary service is temporary two-way filetransfer. For example, device 10 may wish to browse files available ondevice 20, and request files for transfer at the same time that device20 browses files available on device 10, and requests files fortransfer. In this service both device 10 and device 20 have atransceiver relationship to the service of temporary two-way filetransfer. Another exemplary service is registration of one device withanother for a continuous relationship. For example, device 30 may wishto be registered with device 40 as an associated wand barcode scanner asan alternative scanning input to flatbed barcode scanner 42. In thisexample device 30 has a service relationship of a registered scannerdata source, and device 40 has a service relationship of a scanner datasink.

Other exemplary services involve multiple devices, with each devicepossibly having multiple service relationships. In one exemplary servicea scanner software update service is provided by device 10 for devices20 and 30. Device 10 then has a broadcast server relationship for thesoftware update service. Devices 20 and 30 have a client relationship tothe broadcast service. Another exemplary service is text chat amongdevices 10, 20, 50, and 60. In one exemplary embodiment device 10 canonly communicate with device 20, device 20 can only communicate withdevice 10 and 50, and device 50 can only communicate with devices 60 and20. In this service device 10 would have a relationship of transceiverwith device 20. Device 20 would have a service relationship oftransceiver with devices 10 and 50, and a service relationship of relaywith devices 10 and 50. Device 50 likewise would have a servicerelationship of transceiver with devices 20 and 60, and a relayrelationship with devices 20 and 60. Device 60 would have a transceiverrelationship with device 50. Other service examples include registrationof other peripherals such as printers, news aggregation, eventnotification, email service, calendar update, etc. Other device servicerelationships such as a gateway, bridge, and etc. are well within therange of intended services as will be understood by those skilled in theart.

As will be appreciated by those skilled in the art, the connection ofdevices for wireless service is typically a tedious process thatinvolves the user in the minutia of the underlying protocol used by thewireless adapter. To illustrate the difficulty involved, consider thetransfer of a single file from one Windows® Mobile device 10 to anotherWindows® Mobile device 20 using a Bluetooth wireless adapter. Sincewireless devices typically depend upon battery life, at the beginning ofthe transfer, the Bluetooth devices are likely to be turned off toconserve energy. The transfer involves many steps and many differentsoftware utilities. First the user of device 10 must turn on Bluetoothon this device, and make sure that this device is discoverable by otherdevices. This may involve going into a Bluetooth settings window andchecking a box that says “Turn on Bluetooth”, and checking another boxthat says “Make this device discoverable to other devices.” Next theuser of device 20 must turn on Bluetooth in device 20. This is done bygoing into a “Beam Settings” dialogue box and selecting a box that says“Receive all incoming beams.” Device 10 then indicates the desire tosend this file by using file explorer and picking “Beam file . . . ”from a drop down menu. Next the user of device 10 must select a deviceto send the file to. This typically takes about 15 seconds, involving alist of all devices within range. Typically the list presented is asequence of letters and numbers indicating a Bluetooth device address,but lacking any meaning to the user for selection since the user istypically not aware of the address. Over time these may be replaced withdevice names, but users may still have a tough time picking the correctdevice. To add to the confusion, as device names are populated, somedevices may request a bonding. The user is prompted to enter a passcode,which the user may or may not know. Typically this request is from adevice that the user doesn't even plan to send the file to. Some usersdon't know that they can cancel this request. Some may interpret it asan unauthorized wireless activity. Once the correct device is chosen,there still may be another waiting period for other unrelated Bluetoothname queries to complete before the file transfer can proceed. Thedesired file transfer may be delayed in a pending state until the remotedevices respond. In an embodiment, a method can be provided that doesnot force the user to explicitly perform protocol specific, or adapterspecific operations. In another embodiment, a service could be performedwithout the user explicitly making a device visible, making a deviceconnectable, selecting a Bluetooth device address, selecting a Bluetoothdevice name, handling bonding requests for unrelated devices, turningBlootooth on, or viewing devices that are not relevant to the service.The present invention provides many such benefits in the implementationof the various embodiments.

Turning now to FIG. 2, there are depicted some embodiments of devicessuitable for performing the invention, indicated generally as 200. Thisfigure shows a first device 210 in wireless communication with a seconddevice 250 over their respective communication adapters 220 and 260.

Device 210 comprises a first input component 245 that receives anindication of an identification code representing a service that iscommon between at least a first device 210 and a second device 250. Aprocessor 215, running application 225, receives the indication of theidentification code, associates the identification code with a service,and identifies at least a first service relationship for the firstdevice 210 with the identification code. Application 225 on first device210 communicates through an interface of processor 215 to wirelesscommunication adapter 220. The application 225 automatically connects tosecond device 250 by transmitting the identification code over thewireless adapter 220. Embodiments of the first device also include adisplay component 230 for displaying the state of the application 225. Adisplay component may be a monitor, LCD Screen, speaker or other outputcomponent. Embodiments also include a portion 235 of the display 230that is utilized by the application 225 and a graphical user interface240 for controlling application 225. Embodiments of the first devicealso include an additional input component 247, wireline network adapter205, and a cellular network adapter 207.

The second device 250 includes an input component 265 that receives anindication of an identification code representing a service that iscommon between at least the first device 210 and the second device 250.A processor 255, running application 285, receives the indication of theidentification code, associates the identification code with a service,and identifies at least a second service relationship for the seconddevice 250 with the identification code. Application 285 on seconddevice 250 communicates through an interface to processor 255 towireless communication adapter 260. Application 285 parses transmissionsthat are received on the wireless adapter 260 looking for a match to theservice identification code. When a match is found second device 250registers first device 210 as a participant in the service associatedwith the identification code, and thus both service relationships areconfigured for the service. In some embodiments a second input component275 such as a mouse or keyboard is used to select content to betransferred. In some embodiments display 280 provides information andcontrol of the program to the user through input component 265. Contentmay include computer files, application specific files, folderscontaining a number of files, media streams, and the like.

Input components 265, 245, and 247 may be any of a variety of inputcomponents suitable for deriving a common identification code from theinput signal such as a motion sensor, velocity sensor, accelerometer,microphone, mouse, barcode scanner, range laser, linear imager, areaimager, keypad, touch screen, keyboard, or virtual keyboard. As a firstembodiment, a readily available bar-code such as that found on a sodacan could be used to input the same code into both devices 210 and 250.In this embodiment, components 245 and 265 are barcode scanners. Thecode that is input to the two devices is the common barcode from thesoda can. It is input to device 210 by holding the can in front of aninput barcode scanner 245. It is input to device 250 by holding the canin front of input barcode scanner 265. Many other combinations arepossible, for example, the code from the can could alternatively betyped into a keypad on one or both of the devices. In anotherembodiment, the two devices 210 and 250 are held in close proximity andshaken. In this embodiment, the input components 245 and 265 could bemotion sensors, velocity sensors, or accelerometers. An algorithmprocessing the motion indication derives an identical parameter from themotion in each processor 215 and 255. This common parameter is used asthe common identification code. For example, the velocity could bedetermined by a common algorithm and rounded off to a precision thatgives a high probability that the same number is determined in bothprocessors. In another embodiment, input components 245 and 265 aremicrophones. The same word is spoken in the range of both microphones,and the word is processed in each processor 215 and 255 through a speechrecognition algorithm. This word is then used as the identificationcode. In another embodiment the first device 210 computes a randomstring that is preferably short and easy to enter, and displays this asa suggested code in graphical user interface 240. In some embodimentsapplication 225 monitors other identification codes used, and makes aselection not likely to interfere with them. A checkbox when selected byan input component 265 such as a mouse constitutes an indication thatthis suggested code is to be used. A user then enters the suggested codeinto an input component 265, such as a keypad, of the second device 250.An indication of an identification code may be drawn from a broad rangeof environmental parameters that are common to the devices utilizing theservice. An indication could be reading of a barcode, a common motionsuch as shaking the devices, a common input such as speech, a commonnumber entry on a keypad, checking a box to accept a suggested code,etc.

Processors 215 and 255 may for example be a standard computer processorsuch as the Intel® XScale™, Pentium™, Itanium™, or Xeon™ processors.Alternatively, the processor could be dedicated logic or somecombination of a standard computer processor and dedicated logic.Likewise the applications 225 and 265 may be software running on theprocessors. The applications could alternatively be embodied as adedicated hardware function or some mixture of hardware and software.

The wireless adapters 220 and 260 are coupled to their respectiveprocessors 215 and 255 to carry out a compatible wireless protocol. Inone embodiment the wireless adapter 220 is mounted in one or morecomputer chips on the same board as the processor 215. In anotherembodiment a wireless adapter is plugged into a USB port. In yet anotherembodiment a wireless adapter is plugged into a PC card slot. In someembodiments the wireless adapter performs a Bluetooth protocol.

Turning now to FIG. 3, and FIG. 4 there are depicted flow diagrams forcomputer-readable media for performing a method of service connection.Flow diagram 300 depicts the receiver operations for service connectionwhile flow diagram 400 depicts the sender operations for serviceconnection. At 310 an indication of an identification code is input intoa first device such as 210. In some embodiments the indication resultsin the acquisition of raw sensor data such as an audio or image capture.These embodiments process the raw sensor data to produce anidentification code so that an identical communication code is producedby processing similar data at 405 when, similarly, an indication of anidentification code is input into a second device such as 250. In someembodiments the indication at 310 is input by holding up an objecthaving a barcode symbol in front of a barcode scanner input device suchas 245. In other embodiments the indication at 310 is input by selectinga check box in a display using a pointing device such as a mouse thataccepts a suggested identification code. In other embodiments theindication at 310 is input by typing in a code into a keyboard orkeypad.

Still with regard to FIG. 3 and FIG. 4, at 320 one or more servicerelationships are identified for a first device such as 210. Forexample, in a content transfer service, where device 210 is the receiverof the content, the service relationship for device 210 is identified as“receiver.” In some embodiments this identification is made inconnection with an overt action of the operator who selects the receiveridentity in a menu or dialogue box. In other embodiments thisidentification is made implicitly, for example when an icon or menu itemis activated indicating that the desired service relationships fordevice 210 are implicit in the selection of the icon or menu item.Similarly at 410 one or more service relationships are identified for adevice such as 250. In some embodiments a single service relationshipsuch as “sender” is identified at 410 when an icon or menu item isactivated to send or beam a file to a remote device such as 210. Inother embodiments at 410 a user selects one or more servicerelationships from a menu such as the selection of “sender”.

Still with regard to FIG. 3 and FIG. 4, there is depicted therein amethod for automatically configuring a devices such as 210 and 250 intotheir respective identified service relationships. At 330 a device suchas 210 transmits the identification code in a predetermined type ofrecord. In an exemplary embodiment where the wireless adapter protocolis Bluetooth, the predetermined record type is Service DiscoveryProtocol (SDP), and the identification code is contained within theservice name of the SDP record. At 340 the method checks to see ifcontent is received for device 210. If the content is not yet received,then the method returns to 330, and repeats a cycle of transmitting theidentification code and looking for received content. At 415 a devicesuch as 250 scans for the predetermined record type, and when it finds arecord of proper type, at 420 the method looks for a match between adata field in the record of proper type and its own internal copy of theidentification code. In an exemplary embodiment where the wirelessadapter protocol is Bluetooth, the data field is the service name of anSDP record. If the code is not found in this record, then the method atdevice 250 returns to 415, continuing to scan for records of propertype. If the code is found at 420, then at 425 the record is furtherprocessed to determine the device address of the device which sent thepredetermined record type having the embedded identification code. Inone embodiment the predetermined record type contains the deviceaddress. In other embodiments the device address is discovered byfurther communication with the device that transmitted the matchingrecord. In still other embodiments a local data store is consulted fordetermining the device address of the device that transmitted thematching record. At 430 the target device address is registered within adevice such as 250, as a remote device eligible for the contenttransmission service. At this point a device such as 210 isautomatically configured into the service relationship of receiver, anddevice 250 is automatically configured into the service relationship ofsender.

Still with regard to FIG. 3 and FIG. 4, there is depicted therein anexemplary embodiment of content transfer within an established service.At 435 content is selected to be transmitted. In some embodiments 435follows automatic configuration of the service. For example, the servicehaving been established, the user of device 250 proceeds to transmitcontent at 445, and has the opportunity to select more content totransfer at 450, thereby returning to the content selection 435, andtransferring as much content as desired for as long as desired. In otherembodiments 435 precedes the establishment of service. For example, auser selects the file or content first and then indicates the operationof sending. Thereupon the content is already indicated and the serviceis established and content transmission 445 proceeds after configurationof both devices into the service relationship. In some embodiments theuser then has the option of continuing transmission at 450, for exampleby prompting the user with the query “Send another file?” In otherembodiments, the offer is implicit in a continuous prompt such as anactionable menu, file browser, or content tree. Content selected fortransmission by device 250 is then received at device 210 at 340.Content that has been received is made available locally at 350, andstatus of the transfer is displayed to the user at 360. In someembodiments newly received content is automatically opened and utilizedfor example when the content is an audio file for a real-time audiotransmission service. In some embodiments an icon or label is displayedshowing the user that new content has been received. In an exemplaryembodiment the user of device 450 chooses to discontinue the contenttransfer at 455, whereupon device 210 is notified of service terminationand the service application of device 210 sends an acknowledgement todevice 250 and terminates. Whereupon the service application of device250 terminates. In other embodiments the service registration is storedin non-volatile memory, and persists through loss of power, batterychanges, etc. until explicitly terminated by a user. In some embodimentsa service is terminated by either device as desired by a user.

Turning now to FIG. 5 there is depicted therein and referred togenerally as illustration 500, the use of an exemplary user interfacesuch as 240 for registration of a first remote wireless device such as210. In the illustrated embodiment, the same application runs on adevice such as 210 with the same user interface 240 whether the deviceis chosen to identify a sender relationship to a content transferservice, or a receiver relationship to a content transfer service. Otherembodiments provide an icon that is associated with a dedicatedfunction. For example an icon launches and the service automaticallyindicates to application 225 a sender relationship of device 210 to adedicated function of file sending. When a service initiation control505 is activated in the user interface, a service description control510 is presented to establish the service. Embodiments of the userinterface use input activation techniques as are well known in the artsuch as mouse clicks, keyboard shortcuts, screen taps or equivalentoperations to activate the initiation control 505. In other embodimentsan icon is selected that activates services besides file transfer, suchas registration of a printer, registration of a wireless scanner,instant messaging, software distribution. These services are thenassociated with an input identification code.

Still with regard to FIG. 5, the use of exemplary service descriptioncontrol 510 is considered when a service relationship of sender isdesired by a user. The user responds to prompt 512 for example by typingin a barcode number at control 514. At 516 the user interface displays aprompt for the user to choose a service relationship for device 210. Asillustrated in 518 the user identifies the sender relationship for acontent transfer service. A status display at 528 indicates the statusof automatic paring as indicated at 526. 528 displays a message such as“looking for remote device address” until service configuration iscomplete, at which point a device address is displayed. In the presentexample the device address found is 0020e03400e9. At 530 the sender isprompted to choose a file, whereupon, for example a file browser islaunched allowing the user to indicate a file on device 210 to be sent.Status display 532 indicates that file transmission has been successful.

Still with regard to FIG. 5, the use of exemplary service descriptioncontrol 510 is considered when a service relationship of receiver isdesired by a user. At 512 the user interface displays a prompt thatindicates an identification code must be input. In one embodimentcontrol 514 serves both as a display field suggesting an identificationcode, and as an input component for receiving an indication of anidentification code. Control 514 may, for example, display a numberderived from the device address for device 210. A user may selectcontrol field 514 and type in some other number than the one suggested.A user may also accept the suggestion by selecting checkbox 515 based onthe prompt indicated as 517. Alternatively, a user may heed the promptat 512 and indicate the identification code by holding up an object witha barcode to an image scanning input component such as 245. At 516 aprompt is given to the user to select one or more of the servicerelationships displayed in a menu in 518, 520, 522 and 524. The menudisplayed allows the user to indicate a sender or receiver relationship,or both. Other embodiments allow the user to select relay, gateway orbridge. Controls in the present embodiment of the user interface includecheckboxes 518 and 522. For the present example, the user selectscheckbox 522, identifying device 210 as a receiver of content. A statusdisplay at 528 indicates the status of the attempt to automatically pairas indicated in 526. FIG. 5 at 528 illustrates the status for a senderafter automatic pairing is successful, indicating the device addressthat has been located. For the present example, where selection ofreceiver is made instead, display 528 would provide a message such as“sending service request” before service is established and “serviceconnected” once successful automatic connection is accomplished. FIG. 5illustrates prompt 530 for a sender service relationship. For theselection of a receiver relationship instead, prompt 530 contains aprompt such as “Files received:” and status display 532 displays astatus such as an icon or file name of the content that has beenreceived for local use.

As can be seen, the present invention and its equivalents arewell-adapted to provide a new and useful method for service connectionof wireless devices. The present invention enables users of wirelessdevices to configure a service by automatic connection through the useof a local environmental indication of an identification code.

Many different arrangements of the various components depicted, as wellas components not shown, are possible without departing from the spiritand scope of the present invention. Embodiments of the present inventionhave been described with the intent to be illustrative rather thanrestrictive. Alternative embodiments will become apparent to thoseskilled in the art that do not depart from its scope. A skilled artisanmay develop alternative means of implementing the aforementionedimprovements without departing from the scope of the present invention.

It will be understood that certain features and subcombinations are ofutility and may be employed without reference to other features andsubcombinations and are contemplated within the scope of the claims. Notall steps listed in the various figures need be carried out, or carriedout at all in some instances, in the specific order described.

1. One or more computer-readable media having computer-useableinstructions embodied thereon to perform a method for a serviceconnection comprising: inputting into at least one device an indicationof an identification code, wherein said identification code represents aservice over a wireless link among at least a first device and a seconddevice; identifying at least a first service relationship associatedwith said identification code for said first device; identifying atleast a second service relationship associated with said identificationcode for said second device; and automatically configuring said firstdevice into said first service relationship and automaticallyconfiguring said second device into said second service relationshiputilizing said identification code.
 2. The computer readable media ofclaim 1, said method further comprising transferring content betweensaid first device and said second device.
 3. The computer readable mediaof claim 1, wherein said wireless link is selected from the groupconsisting of IEEE 802.11, IEEE 802.15, IEEE 802.16, and IEEE 802.20. 4.The computer readable media of claim 1, wherein said automaticallyconfiguring said first device comprises transmitting by said firstdevice said identification code utilizing a predetermined type oftransmission record.
 5. The computer readable media of claim 4, whereinsaid automatically configuring said second device into said secondservice relationship comprises parsing by said second device saidpredetermined type of transmission records for a match to saididentification code.
 6. The computer readable media of claim 5, whereinsaid automatically configuring said second device into said secondservice relationship comprises utilizing a device address for aconnection derived from a matching record transmitted by said firstdevice containing said identification code.
 7. The computer readablemedia of claim 6, wherein said predetermined type of transmission recordis a Bluetooth Service Discovery Protocol record.
 8. A local device forautomatic wireless system configuration supporting a content transfercomprising: a first input component configured to receive an indicationof an identification code, said identification code representing aservice that is common among said local device and at least a firstremote device participating in a content transfer; a processor coupledto said first input component; a wireless adapter coupled to saidprocessor; and an application running on said processor, configured toidentify at least one service relationship for said local deviceassociated with said identification code, said application furtherconfigured to automatically connect to said first remote device bycommunicating said identification code over said wireless adapter. 9.The local device of claim 8, wherein said input component is selectedfrom the set consisting of a motion sensor, a velocity sensor, anaccelerometer, a microphone, a barcode scanner, a range laser, a linearimager, an area imager, a keypad, a touch screen, a virtual keyboard,and a keyboard.
 10. The local device of claim 8, wherein said wirelessadapter performs a Bluetooth interface.
 11. The local device of claim10, wherein said wireless adapter comprises a subcomponent chosen fromthe set consisting of a computer chip, a USB port, and a PC card. 12.The local device of claim 8, further comprising a display componentcoupled to said processor for displaying the state of said application.13. The local device of claim 8, further comprising a second inputcomponent configured to receive a content selection from a user fortransfer at least to said first remote device.
 14. The local device ofclaim 12, wherein said display component further comprises a graphicaluser interface subcomponent for controlling said application.
 15. A userinterface for registration of at least a first remote wireless devicecomprising: a prompt indicating that an identification code must beinput, wherein said identification code represents a service that iscommon among a local device and at least a first remote deviceparticipating in content transfer; an input component for receiving anindication of said identification code; a control identifying at leastone service relationship for said local device associated with saididentification code; and a status display configured to indicatesuccessful automatic connection among said local device and at leastsaid first remote device, wherein said display indicates success aftersaid local device establishes said at least one service relationshipwith said first remote wireless device associated with saididentification code.
 16. The user interface of claim 15 wherein said atleast one service relationship is selected from the set consisting ofreceiver, sender, transceiver, relay, gateway, and bridge.
 17. The userinterface of claim 15 wherein said identification code represents aservice chosen from the set consisting of one-way file transfer, two-wayfile transfer, registration of a printer, registration of a wirelessscanner, and instant messaging.
 18. The user interface of claim 15,further comprising a display field suggesting said identification code.19. The user interface of claim 15, wherein said control identifying aservice relationship for said local device associated with saididentification code is an icon that launches an application thatperforms a dedicated function.
 20. The user interface of claim 15,wherein said service operates according to a Bluetooth standard.